#include <iostream>
#include <sstream>
#include <string>

#include "Cliente.h"


using namespace std;


/*---------Constructores y destructores----*/
Cliente::Cliente(int id, string nombre, string direccion, string telefono)
{
    this->id = id;
    this->nombre=nombre;
    this->direccion=direccion;
    this->telefono=telefono;
    this->totalEnviosHechos=0;
    //this->costosEnviosTotal=0;
    lista = new ListaEnvio();
}
Cliente::Cliente()
{
    this->id = 0;
    this->nombre="";
    this->direccion="";
    this->telefono="";
    this->totalEnviosHechos=0;
    //this->costosEnviosTotal=0;
    lista = new ListaEnvio();
}

Cliente::~Cliente()
{
    delete lista;
}
/*---------------------------------------*/

/*---------Metodos set y get -----------*/
int Cliente::getId()
{
    return id;
}

void Cliente::setId(int val)
{
    id=val;
}

string Cliente::getNombre()
{
    return nombre;
}

void Cliente::setNombre(string val)
{
    nombre=val;
}

string Cliente::getDireccion()
{
    return direccion;

}

void Cliente::setDireccion(string val)
{
    direccion=val;
}

string Cliente::getTelefono()
{
    return telefono;
}

void Cliente::setTelefono(string val)
{
    telefono=val;
}

int Cliente::getTotalEnviosHechos()
{
    return totalEnviosHechos;
}

void Cliente::setTotalEnviosHechos(int val)
{
    totalEnviosHechos=val;
}

int Cliente::getCostosEnvioTotal()
{
    return costosEnviosTotal;
}

void Cliente::setCostosEnvioTotal(int val)
{
    costosEnviosTotal=val;
}
/*---------------------------------------*/


/*----------------Metodos Importantes------*/

/*string Cliente::toString()
{
    stringstream s;
    s<<"-----------------------\n"
    <<"ID: "<<id<<endl
    <<"Nombre: "<<nombre<<endl
    <<"Direccion: "<<direccion<<endl
    <<"Telefono: "<<telefono<<endl
    <<"Costos total: "<<costosEnviosTotal<<endl;
    return s.str();
}
*/
void Cliente::mostrarCliente()
{
    cout<<"-----------------------\n";
    cout<<"ID: "<<id<<endl;
    cout<<"Nombre: "<<nombre<<endl;
    cout<<"Direccion: "<<direccion<<endl;
    cout<<"Telefono: "<<telefono<<endl;
    //cout<<"Costos total: "<<costosEnviosTotal<<endl;
}

ListaEnvio* Cliente::getLista()
{
    return lista;
}
void Cliente::setLista(ListaEnvio* obj)
{
    lista = obj;
}

void Cliente::agregarEnvio(Envios *obj)
{
    lista->insertarPrimero(obj);
}

/*---------------------------------------*/



